package com.superb.common.core.annotation;

import com.superb.common.core.enums.EncryptType;

import java.lang.annotation.*;

/**
 * 字段加解密
 * @Author: ajie
 * @CreateTime: 2024-05-11 14:46
 */
@Inherited
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface SuperbEncryptDecryptField {

    /**
     * 是否加密
     * @return
     */
    boolean encrypt() default true;

    /**
     * 是否解密
     * @return
     */
    boolean decrypt() default true;

    /**
     * 是否脱敏 脱敏类型
     * @return
     */
    EncryptType type() default EncryptType.DEFAULT;
}
